{
    title:  'Application Skeletons',
    crumbs: [
        { "User's Guide": 'index.html' },
    ],
}
        <h1>Application Skeletons</h1>

        <p>The easiest way to get started with an ESP application is to use one of the ESP application skeletons.
        Skeletons are integrated starter packages for ESP applications. Skeletons typically include default 
        web pages, layouts, partial pages, stylesheets, scripts and required dependent packages for an easy, 
        one-step launch of your web application.</p>

        <h2>Popular Skeletons</h2>
        <table class="ui table" title="skeletons">
            <thead>
                <tr><th class="four wide">Package Name</th><th>Description</th></tr>
            </thead>
            <tbody>
                <tr><td>esp-html-skeleton</td><td>ESP application skeleton for HTML5 MVC applications
                using server-side view pages.</td></tr>

                <tr><td>esp-angular-skeleton</td><td>ESP application starter skeleton for 
                    client-side <a href="http://angular.org">AngularJS Applications</a>.</td></tr>
            </tbody>
        </table>

        <h2>Skeleton Documentation</h2>
        <p>Each skeleton should include documentation in its README file. Clicking on the package
        in the Catalog listing will take you to the repository for the package and display the package README.
        For example, click on <a href="https://embedthis.com/catalog/search/esp-html-skeleton">esp-html-skeleton</a>
        in the catalog.</p>

        <h2>esp-html-skeleton</h2>
        <p>The <em>esp-html-skeleton</em> is a complete skeleton for building HTML5 MVC applications with
        server-side page views. The skeleton configures ESP and Expansive and provides:</p>
        <ul>
            <li>ESP page compilation</li>
            <li>ESP controller compilation</li>
            <li>Default home page</li>
            <li>Default Less style sheet and theming</li>
            <li>Generation of controllers</li>
            <li>Generation of database tables</li>
            <li>Generation of database migrations</li>
            <li>Generation of resource scaffolds with Add/Edit/Delete controller actions and views</li>
            <li>RESTful URLs mapped onto controller actions</li>
            <li>Initial Expansive configuration</li>
            <li>Processing of Less stylesheets into CSS</li>
            <li>Minifying Javascripts</li>
            <li>Minifying stylesheets</li>
            <li>Compression of files using gzip for production</li>
            <li>Development and production modes</li>
        </ul>

        <p>The skeleton supports <em>debug</em> and <em>release</em> modes of operation via the
        <em>pak.mode</em> property in the <em>package.json</em> file. By default, <em>debug</em> mode 
        will select minified scripts with symbol map files, otherwise unminified versions will be used. 
        Release mode will minify scripts as required.</p>

        <p>See the <a href="https://github.com/embedthis/esp-html-skeleton">esp-html-skeleton Git Repository</a>
        for more details and documentation.</p>

        <h2>esp-angular-skeleton</h2>
        <p>The <em>esp-html-skeleton</em> is a skeleton for building <a href="http://angularjs.org">AngularJS</a>
        applications with client-side views in a Single-Page-Architecture (SPA) application. 
        using Angular, ESP, Expansive, Less stylesheets and RESTFul URL routes. The skeleton configures
        ESP, Angular, Expansive and provides:</p>
        <ul>
            <li>Full ESP integration with Angular</li>
            <li>Library of Angular directives and helpers</li>
            <li>ESP page compilation</li>
            <li>ESP controller compilation</li>
            <li>Default Angular home page for the application</li>
            <li>Default Less style sheet and theming</li>
            <li>Generation of server-side controllers</li>
            <li>Generation of database tables</li>
            <li>Generation of database migrations</li>
            <li>Generation of resource scaffolds with client-side Angular views</li>
            <li>RESTful URLs mapped onto controller actions</li>
            <li>Initial Expansive configuration</li>
            <li>Processing of Less stylesheets into CSS</li>
            <li>Minifying Javascripts</li>
            <li>Minifying stylesheets</li>
            <li>Minifying Angular scripts</li>
            <li>Compression of files using gzip for production</li>
            <li>Development and production modes</li>
            <li>Packaging of the Angular application into a single script file for efficient execution.</li>
        </ul>
        <p>The skeleton supports <em>debug</em> and <em>release</em> modes of operation via the
        <em>pak.mode</em> property in the <em>package.json</em> file. By default, <em>debug</em> mode 
        will select minified scripts with symbol map files, otherwise unminified versions will be used. 
        Release mode will minify scripts as required.</p>

        <p>See the <a href="https://github.com/embedthis/esp-angular-skeleton">esp-angular-skeleton Git Repository</a>
        for more details and documentation.</p>

        <h2>Upgrading Skeletons</h2>
        <p>Skeletons install default content that may then modified and customized to suit your individual needs and
        tastes. As such, when you upgrade a Skeleton, it must take care not to overwrite any of your changes. Layouts,
        partial, and content pages will not be upgraded when you run <em>pak upgrade</em> to upgrade your installed
        packages. If you must upgrade to a more recent version of the skeleton, create a new application and manually
        migrate the upgraded files.</p>

            
